home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 6
/
FM Towns Free Software Collection 6.iso
/
data
/
fapx
/
fapxentr.plp
< prev
next >
Wrap
Text File
|
1993-07-08
|
5KB
|
190 lines
/************************************************************************
* フォーラムの入会手続き・ハンドル名・会議室登録番号を変更し、 *
* 会議室の未読数を調整し、未読数調整分をリストアップする処理 *
* presented by -なる-☆早川 & Yama-chan (93.01.07) *
*************************************************************************/
var fname [8]; /* ← 入会するフォーラム名 */
var handle [16]; /* ← あなたのハンドル名(省略で変更なし */
/* 但し、新規入会は省略すると本名となる) */
var boadno [60]; /*{1,2,3,4,5,6,7,8,9,10,・・・,15,16,17,18,19,20}; */
/* ↑ 登録する会議室の番号(省略可) */
var mesno [60]; /*{1,2,3,4,5,6,7,8,9,10,・・・,15,16,17,18,19,20}; */
/* ↑ 未読数を調整する会議室番号の指定 */
var rtno [3]; /* ← 未読数を調整する数の指定(0~999) */
%RCRT{
[fname,boadno,mesno,rtno]
var SENDNO1[5];
var SENDNO2[5];
var SENDNO3[5];
var SENDNO4[5];
var rxlist[50];
case(boadno<>{},
{Yes},
{
footnote(fname|{ 会議室登録を }|boadno|{ に設定処理中});
display({\n}|fname|{ 会議室登録を }|boadno|{\nに設定します\n});
type({OPT\n});
WAITCHAR(Wtime2,{ E:終了)\n>},{type({4\n})});
WAITCHAR(Wtime2,{ 改行で変更せず) \n:},{type(boadno|{\n})});
wait(Wtime2,{AbortOff({ホストが鈍いよぉ\n})},
{ 改行で変更せず) \n:},
{type({\n});WAITABORT(Wtime2)},
{\n>},
);
});
case (mesno<>{}&&rtno<>{},
{Yes},
{
rxlist:=mesno;
footnote(fname|{ }|rxlist|{ の未読を }|rtno|{ に設定処理中});
display({\n}|fname|{ }|rxlist|
{\nの未読を }|rtno|{ に変更します\n});
loop ({
case(@head(rxlist,{,})={},
{Yes},{im({No})},
{No},
{
type({MES }|@head(rxlist,{,})|{\n});
wait(Wtime2,{AbortOff({ホストが鈍いよぉ\n})},
{正しいコマンドを入力して下さい◆\n},{},
{\n>}, {},
{-\n電子},
{
SENDNO1:=@tail(@laststr,{数 :},{ 未});
SENDNO2:=SENDNO1-rtno;
SENDNO3:=SENDNO1
-@tail(@laststr,{読 :},{-\n})
+1;
SENDNO4:=@tail(@laststr,{読 :},{-\n});
WAITABORT(Wtime2);
case (SENDNO4 > rtno,{Yes},
{
type({RC }|SENDNO2|{\n});
WAITABORT(Wtime2);
type({RT }|SENDNO3|{-}|
SENDNO2|{\n});
WAITABORT(Wtime2*10);
/* 未読調整分のリストアップ */
});
});
rxlist:=@body(rxlist,{,}); /* 次のmesnoへ */
im({Yes});
});
});
});
};
/* フォーラムのお知らせを見る */
%ANN {
[fname]
footnote(fname|{のおしらせ確認します});
display(fname|{のお知らせをみます\n});
LOGforum(fname|{\ANN},{start});
type({SET PAGE OFF\n});WAITABORT(Wtime1);
type({ANN\n});
wait(Wtime2,{AbortOff({\nホストの反応が鈍いよぉ~\n})},
{\n>},
{
type({1-\n});
loop ({
wait (Wtime2*10,
{AbortOff({\nホストの反応が鈍いよぉ~\n})},
{続き (改行で次文書 E:終了)\n>},
{type({\n});im({Yes})},
{続き (改行で次頁 S:次文書 E:終了)\n>},
{type({\n});im({Yes})},
{表示終了\n>},{im({No})});
});
},
{\n-現在情報はありません-\n},{}
);
LOGforum(fname|{\ANN},{stop});
};
%FNYUKAI{
[fname,handle,boadno,mesno,rtno]
case(DEBUG,{Yes},
{display({forum=「}|fname|{」\n}|{handle=「}|handle|{」\n}|
{boadno=「}|boadno|{」\n}|{mesno=「}|mesno|{」\n}|
{rtno=「}|rtno|{」\n})});
type({GO }|fname);type({\n});
case(@FORUMTOP,{NotMember},
{
footnote(fname|{ に ハンドル名 }|handle|{ で入会します});
display({\n}|fname|{ に ハンドル名 }|handle|{ で入会します\n});
type({3\n});
WAITCHAR(Wtime2,{ 改行のみ実名)\n:},{type(handle|{\n})});
WAITCHAR(Wtime2,{ (1:OK 2:NG)\n:},{type({1\n})});
WAITCHAR(Wtime2,{する 2:しない)\n:},{type({1\n})});
WAITABORT(Wtime2*3);
case (boadno={}&&mesno={}&&rtno={},
{No},{RCRT(fname,boadno,mesno,rtno);
});
ANN(fname);
},
{OK},
{
case(handle<>{},
{Yes},
{
footnote(fname|{ のハンドル名を }|handle|{ に処理中});
display({\n}|fname|{ のハンドル名を }|handle|
{ に変更します\n});
type({OPT\n});
WAITCHAR(Wtime2,{ E:終了)\n>},{type({3\n})});
WAITCHAR(Wtime2,{ 改行で変更せず)\n:},
{type(handle);type({\n})});
wait(Wtime2,{AbortOff({ホストが鈍いよぉ\n})},
{-氏名はもとのままです-\n},,
{ (1:OK 2:NG)\n:},{type({1\n});}
);
WAITABORT(Wtime2);
});
case (boadno={}&&mesno={}&&rtno={},
{No},{RCRT(fname,boadno,mesno,rtno);
});
},
{Busy},{display({次の処理にスキップします\n})},
{Maintenance},{display({次の処理にスキップします\n})},
{forumERROR},{display({次の処理にスキップします\n})}
);
display({\n}|fname|{ の処理を完了しました\n});
};
/************************************************************************/
var n [8];
var m [8];
n:=0;
dispoff(!DEBUG);
command({del }|TEMP2|{_moptxf.tmp});
command({txf -lcx }|UP2|{_FORUM.CTL > }|TEMP2|{_moptxf.tmp});
dispoff({No});
case(@filechk(TEMP2|{_moptxf.tmp}),
{Yes},{m:=@tail(@getchar(@read(TEMP2|{_moptxf.tmp}),1,10),{ })},
{No},{m:=0});
loop ({
n:=n+1;
case(n>m,
{Yes},{im({No})},
{No},
{
%l1 @read(UP2|{_FORUM.CTL},n,1);
FNYUKAI(@tail(l1,{forum=},{;}),
@tail(l1,{handle=},{\n}),
@tail(l1,{boadno=},{;}),
@tail(l1,{mesno=},{;}),
@tail(l1,{rtno=},{;}));
im({Yes});
});
});
dispoff(!DEBUG);
command({del }|UP2|{_FORUM.BAK});
command({rename }|UP2|{_FORUM.CTL _FORUM.BAK});
dispoff({No});